package com.zxy.salenet.web.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

/**
     * SalenetGoods
     */
@Data
@Table(name = "salenet_goods")
public class SalenetGoods {
    /**
     * 编号主键自增
     */
    @ApiModelProperty(value = "主键自增")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY, generator = "SELECT LAST_INSERT_ID()")
    private Integer id;

    /**
     * 商品编号 唯一
     */
    @ApiModelProperty(value = "商品对应的goodsId 购买  删除时需要传输的数据")
    @Column(name = "goods_id")
    private Integer goodsId;

    /**
     * 商品名称
     */
    @ApiModelProperty(value = "商品的名称")
    @Column(name = "goods_name")
    private String goodsName;

    /**
     * 商品类型  外键  连接商品类型表
     */
    @ApiModelProperty(value = "")
    @Column(name = "goods_type")
    private Integer goodsType;

    /**
     * 商品价格
     */
    @Column(name = "goods_price")
    private BigDecimal goodsPrice;

    /**
     * 商品售价
     */
    @Column(name = "goods_selling_price")
    private BigDecimal goodsSellingPrice;

    /**
     * 商品产地
     */
    @Column(name = "goods_orgin")
    private String goodsOrgin;

    /**
     * 商品品牌 外键连接商品品牌表
     */
    @Column(name = "goods_brand")
    private Integer goodsBrand;

    /**
     * 上市时间
     */
    @Column(name = "goods_times")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date goodsTimes;

    /**
     * 上架时间
     */
    @Column(name = "goods_putaway")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date goodsPutaway;

    /**
     * 商品数量
     */
    @Column(name = "goods_count")
    private Integer goodsCount;

    /**
     * 商品验证码 随机 唯一
     */
    @Column(name = "goods_auth_code")
    private Integer goodsAuthCode;

    /**
     * 商品图片地址
     */
    @Column(name = "goods_img")
    private String goodsImg;

    /**
     * 商品描述
     */
    @Column(name = "goods_described")
    private String goodsDescribed;

    /**
     * 商品状态（ 正常 缺货 下架）
     */
    @Column(name = "goods_status")
    private Integer goodsStatus;

    /**
     * 获取编号主键自增
     *
     * @return id - 编号主键自增
     */
    public Integer getId() {
        return id;
    }

    /**
     * 设置编号主键自增
     *
     * @param id 编号主键自增
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取商品编号 唯一
     *
     * @return goods_id - 商品编号 唯一
     */
    public Integer getGoodsId() {
        return goodsId;
    }

    /**
     * 设置商品编号 唯一
     *
     * @param goodsId 商品编号 唯一
     */
    public void setGoodsId(Integer goodsId) {
        this.goodsId = goodsId;
    }

    /**
     * 获取商品名称
     *
     * @return goods_name - 商品名称
     */
    public String getGoodsName() {
        return goodsName;
    }

    /**
     * 设置商品名称
     *
     * @param goodsName 商品名称
     */
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    /**
     * 获取商品类型  外键  连接商品类型表
     *
     * @return goods_type - 商品类型  外键  连接商品类型表
     */
    public Integer getGoodsType() {
        return goodsType;
    }

    /**
     * 设置商品类型  外键  连接商品类型表
     *
     * @param goodsType 商品类型  外键  连接商品类型表
     */
    public void setGoodsType(Integer goodsType) {
        this.goodsType = goodsType;
    }

    /**
     * 获取商品价格
     *
     * @return goods_price - 商品价格
     */
    public BigDecimal getGoodsPrice() {
        return goodsPrice;
    }

    /**
     * 设置商品价格
     *
     * @param goodsPrice 商品价格
     */
    public void setGoodsPrice(BigDecimal goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    /**
     * 获取商品售价
     *
     * @return goods_selling_price - 商品售价
     */
    public BigDecimal getGoodsSellingPrice() {
        return goodsSellingPrice;
    }

    /**
     * 设置商品售价
     *
     * @param goodsSellingPrice 商品售价
     */
    public void setGoodsSellingPrice(BigDecimal goodsSellingPrice) {
        this.goodsSellingPrice = goodsSellingPrice;
    }

    /**
     * 获取商品产地
     *
     * @return goods_orgin - 商品产地
     */
    public String getGoodsOrgin() {
        return goodsOrgin;
    }

    /**
     * 设置商品产地
     *
     * @param goodsOrgin 商品产地
     */
    public void setGoodsOrgin(String goodsOrgin) {
        this.goodsOrgin = goodsOrgin;
    }

    /**
     * 获取商品品牌 外键连接商品品牌表
     *
     * @return goods_brand - 商品品牌 外键连接商品品牌表
     */
    public Integer getGoodsBrand() {
        return goodsBrand;
    }

    /**
     * 设置商品品牌 外键连接商品品牌表
     *
     * @param goodsBrand 商品品牌 外键连接商品品牌表
     */
    public void setGoodsBrand(Integer goodsBrand) {
        this.goodsBrand = goodsBrand;
    }

    /**
     * 获取上市时间
     *
     * @return goods_times - 上市时间
     */
    public Date getGoodsTimes() {
        return goodsTimes;
    }

    /**
     * 设置上市时间
     *
     * @param goodsTimes 上市时间
     */
    public void setGoodsTimes(Date goodsTimes) {
        this.goodsTimes = goodsTimes;
    }

    /**
     * 获取上架时间
     *
     * @return goods_putaway - 上架时间
     */
    public Date getGoodsPutaway() {
        return goodsPutaway;
    }

    /**
     * 设置上架时间
     *
     * @param goodsPutaway 上架时间
     */
    public void setGoodsPutaway(Date goodsPutaway) {
        this.goodsPutaway = goodsPutaway;
    }

    /**
     * 获取商品数量
     *
     * @return goods_count - 商品数量
     */
    public Integer getGoodsCount() {
        return goodsCount;
    }

    /**
     * 设置商品数量
     *
     * @param goodsCount 商品数量
     */
    public void setGoodsCount(Integer goodsCount) {
        this.goodsCount = goodsCount;
    }

    /**
     * 获取商品验证码 随机 唯一
     *
     * @return goods_auth_code - 商品验证码 随机 唯一
     */
    public Integer getGoodsAuthCode() {
        return goodsAuthCode;
    }

    /**
     * 设置商品验证码 随机 唯一
     *
     * @param goodsAuthCode 商品验证码 随机 唯一
     */
    public void setGoodsAuthCode(Integer goodsAuthCode) {
        this.goodsAuthCode = goodsAuthCode;
    }

    /**
     * 获取商品图片地址
     *
     * @return goods_img - 商品图片地址
     */
    public String getGoodsImg() {
        return goodsImg;
    }

    /**
     * 设置商品图片地址
     *
     * @param goodsImg 商品图片地址
     */
    public void setGoodsImg(String goodsImg) {
        this.goodsImg = goodsImg;
    }

    /**
     * 获取商品描述
     *
     * @return goods_described - 商品描述
     */
    public String getGoodsDescribed() {
        return goodsDescribed;
    }

    /**
     * 设置商品描述
     *
     * @param goodsDescribed 商品描述
     */
    public void setGoodsDescribed(String goodsDescribed) {
        this.goodsDescribed = goodsDescribed;
    }

    /**
     * 获取商品状态（ 正常 缺货 下架）
     *
     * @return goods_status - 商品状态（ 正常 缺货 下架）
     */
    public Integer getGoodsStatus() {
        return goodsStatus;
    }

    /**
     * 设置商品状态（ 正常 缺货 下架）
     *
     * @param goodsStatus 商品状态（ 正常 缺货 下架）
     */
    public void setGoodsStatus(Integer goodsStatus) {
        this.goodsStatus = goodsStatus;
    }
}